package com.baizhi.interficex;

import java.util.Scanner;

/**
 *  接口：用interface修饰的
 */
public interface Shape {

    /**
     * 接口中所有的方法抽象默认都是由public abstract修饰
     * @return
     */
   double area();



   double perimeter();


   void inInfo(Scanner scan);

    /**
     * 从JDK1.8开始可以在接口中提供实例方法
     */
   default void m(){}

}

//接口
interface Aoo {


}

/**
 * 接口可以继承接口
 * 实现也是具有传递性的
 */
interface Boo extends Aoo{}

//父类
class Coo{}

/**
 * 子类通过  implements实现接口，并重写接口中的抽象方法
 * 实现接口，一个类可以实现多个接口，多个接口之间用，隔开
 * 一个子类如果既要继承，又要实现，那么先继承后实现
 */
//圆形
class Round extends Coo implements Shape,Boo{
    @Override
    public double area() {
        return 0;
    }

    @Override
    public double perimeter() {
        return 0;
    }

    @Override
    public void inInfo(Scanner scan) {

    }
}


class Test01{
    public static void main(String[] args) {
        Shape s = new Round();
        Aoo a = new Round();
        Boo b = new Round();
    }
}
